﻿
using Framework.EncryptionDecryptionService.Enums;

namespace Framework.EncryptionDecryptionService.Inteface
{
    /// <summary>
    /// 秘钥服务
    /// </summary>
    public interface ISecretKeyService
    {
        /// <summary>
        /// 获取公钥
        /// <para>非对称加密的公钥</para>
        /// <para>对称加密的向量</para>
        /// </summary>
        /// <returns></returns>
        public string GetPublicSecretKey();

        /// <summary>
        /// 获取私钥
        /// <para>非对称加密的私钥</para>
        /// <para>对称加密的秘钥</para>
        /// </summary>
        /// <returns></returns>
        public string GetPrivateSecretKey();

        /// <summary>
        /// 公钥 or 向量
        /// <para>非对称加密的公钥</para>
        /// <para>对称加密的向量</para>
        /// </summary>
        public string PublicSecretKey { get { return GetPublicSecretKey(); } }

        /// <summary>
        /// 私钥 or 秘钥
        /// <para>非对称加密的私钥</para>
        /// <para>对称加密的秘钥</para>
        /// </summary>
        /// <remarks></remarks>
        public string PrivateSecretKey { get { return GetPrivateSecretKey(); } }
    }
}
